<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="Checker">
	<property name="severity" value="error" />

	<module name="TreeWalker">
		<module name="SuppressWarningsHolder" />	
		<module name="JavadocMethod">
			<property name="allowMissingParamTags" value="true" />
			<property name="allowMissingReturnTag" value="true" />
		</module>
		<module name="AtclauseOrder">
			<property name="tagOrder" value="@param, @return, @throws, @exception, @since, @see" />
		</module>
		<module name="NonEmptyAtclauseDescription" />
		<module name="UnusedImports">
			<property name="processJavadoc" value="true" />
		</module>
		<module name="AvoidStarImport"/>
		<module name="IllegalImport">
			<property name="illegalPkgs" value="org.jetbrains.annotations" />
		</module>
		<module name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
			<property name="id" value="primitiveClassLiterals"/>
			<property name="maximum" value="0"/>
			<property name="format" value="(Boolean|Character|Byte|Short|Integer|Long|Float|Double|Void)\.TYPE"/>
			<property name="message" value="Please use class literals for primitives and void -- for example, int.class instead of Integer.TYPE."/>
			<property name="ignoreComments" value="true"/>
		</module>
	</module>

	<module name="JavadocPackage" />

	<module name="SuppressWarningsFilter" />

	<module name="RegexpSingleline">
		<property name="format" value="@author" />
		<property name="message" value="Don't use Javadoc @author tags" />
		<property name="fileExtensions" value="java,groovy,kt" />
	</module>

	<module name="SuppressionFilter">
		<property name="file" value="${config_loc}/suppressions.xml"/>
	</module>

</module>
